Here is a list of manual tests you can check when making changes to the Perspectives browser extension. If any of these are easily automatable feel free to add cases for them in test.html instead.


Remember: the Perspectives client extension supports multiple browsers. Remember to test it in:

- Firefox
- SeaMonkey

Also check the localizations!


UI
--
- Each of the Perspectives dialog windows can be opened:
	- 'View Notary Results'
	- 'Add to Whitelist'
	- 'Preferences'
	- 'View Certificate Store'
	- 'Help'

- Each winow closes without saving changes if the user clicks on the Cancel button
- Each winow closes without saving changes if the user presses the Esc key
- Each window is centered on the screen (except 'View Certificate Store')
- Each window displays the Perspectives icon if the user presses alt-tab to change windows
	- Except 'View Certificate Store', which displays the Firefox icon


'Add To Whitelist' tests:
	- Try the same page types as above; all non-https pages should be rejected as invalid URLs
	- Do whitelisted sites display the Perspectives whitelist icon?


'Always ask before contacting Notaries':
	- When installing for the first time, does this default to off?
	- When off, does the client always contact notaries?
		- Regardless of whether the 'Display a reminder' subcheckbox is checked?
		- Is the sub checkbox disabled?
	- When on, does the client *not* contact notaries?
		- Is a reminder notification box displayed (if that preference is set)?
			- Is the reminder on by default?
			- Do all of the buttons on the notification box work?
			- Does clicking the 'Hide these messages' button turn off further notifications?
		- Can the normal 'Force Notary Check' option be used even if the reminder box is shown?
	- Does the 'Display a reminder' subcheckbox enable and disable on the Preferences screen when the main checkbox is checked and unchecked?
	- Are preferences remembered?


Preferences:
- Quorum Percentage must be <= 100
- Quorum Percentage must be >= 1
- Quorum Duration must be >= 0
- Both Quorum Percentage and Duration must be integers


Results
-------
- Is the 'stale results limit' line drawn vertically in the notary results?


Whitelist Preferences
---------------------
- Can the user double click a Domain or Regex line to edit that value?
- Can the user click the Enabled column to enable or disable the whitelist?
- Can the user click the Domain column to toggle sorting by ascending or descending Domain?
- Can the user ctrl-click to select multiple rows?
- Does clicking the Remove button delete all selected rows?


Queries
---------
- If we get at least one response and one timeout, we should only send requeries to notaries that have not given a response yet.
(enable the 'query' debug flags to see this easily)



Toolbar Button
--------------
- If the profile/user has never had Perspectives installed before, installing it adds a toolbar button left of the location bar on restart
- After installing, the toolbar button is movable
- If the profile/user uninstalls and then reinstalls Perspectives, it remembers their toolbar button location
- If the profile/user upgrades Perspectives without uninstalling, it remembers their toolbar button location
x If the profile/user changes their Toolbar to show Text or Icons and Text, the toolbar changes appropriately (FIXME - doesn't currently display text; 
	https://github.com/danwent/Perspectives/issues/44 )


Invalid Certificates
--------------------
- One easy way to test against 'invalid certificates' is to set your clock back before a certificate was issued. This can also generate a SecurityChange event.


Private Browsing
----------------
	a) For browsers that support "private browsing" mode (e.g. Firefox):
		- In private mode, if private queries are allowed, do they happen?
		- In private mode, if private lookups are not allowed, are the not sent?
			- Does the user see a tooltip message explaining why?
			- Are they still sent if the user selects 'Force notary check'?
		- In regular mode, are queries sent regardless of the 'allow' setting?

	b) For browsers that do not support "private browsing" mode (e.g. SeaMonkey):
		- Are queries sent regardless of the 'allow' setting?
